
package com.ctsi.djcloudmqtt.dto.down;


import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;


@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class TakeoffToPointDownDTO {

    /**
     * 目标点纬度(角度值)
     */
    @JsonProperty(value = "target_latitude")
    private Double targetLatitude;

    /**
     * 目标点经度(角度值)
     */
    @JsonProperty(value = "target_longitude")
    private Double targetLongitude;

    /**
     * 目标点高度
     */
    @JsonProperty(value = "target_height")
    private Integer targetHeight;

    /**
     * 安全起飞高度
     */
    @JsonProperty(value = "security_takeoff_height")
    private Integer securityTakeoffHeight;

    /**
     * [必填]返航模式设置值 {"0":"智能高度","1":"设定高度"}
     */
    @JsonProperty(value = "rth_mode")
    private Integer rthMode;

    /**
     * 返航高度   {"max":1500,"min":2,"step":1,"unit_name":"米 / m"}
     */
    @JsonProperty(value = "rth_altitude")
    private Integer rthAltitude;

    /**
     * {"0":"悬停","1":"着陆(降落)","2":"返航"}
     */
    @JsonProperty(value = "rc_lost_action")
    private Integer rcLostAction;

    /**
     * [必填]指点飞行失控动作   {"0":"继续执行指点飞行任务","1":"退出指点飞行任务，执行普通失控行为"}
     */
    @JsonProperty(value = "commander_mode_lost_action")
    private Integer commanderModeLostAction;

    /**
     *[必填]指点飞行模式设置值   {"0":"智能高度飞行","1":"设定高度飞行"}
     */
    @JsonProperty(value = "commander_flight_mode")
    private Integer commanderFlightMode;

    /**
     *[必填]指点飞行模式设置值   {"0":"智能高度飞行","1":"设定高度飞行"}
     */
    @JsonProperty(value = "commander_flight_height")
    private Integer commanderFlightHeight;

    /**
     * 一键起飞任务 UUID
     */
    @JsonProperty(value = "flight_id")
    private String flightId;

    /**
     *一键起飞的飞行过程中能达到的最大速度
     */
    @JsonProperty(value = "max_speed")
    private Integer maxSpeed;

    /**
     * 是否在模拟器中执行任务
     */
    @JsonProperty(value = "simulate_mission")
    private  TakeoffToPointDownSimulateMissionDTO simulateMission;

    /**
     * [废弃]航线失控动作
     */
    @Deprecated
    @JsonProperty(value = "exit_wayline_when_rc_lost")
    private Integer exitWaylineWhenRcLost;

}
